Contents
The Graphics Factory

Table of Contents

Introduction

Features

Contacting Kamyan Software

Ordering Information

Quick Hints

Overview

Menus

Creating You Own Modules


Introduction

This program offers a fascinating and useful way to create and explore patterns and graphics that can be used for hundreds of applications.  Explore the infinite world or fractals or experiment with artifical life with cellular automatons.  Create marble backgrounds or cloud textures.  Generate repeatable patterns that can be tiled.  Employ modules which randomly build entire landscape pictures.  Interactively control the flow of drawing or let your module run overnight to produce hundreds of patterns automatically.

This program can be used at two distinct levels.  At one level you as the user can load existing modules and use these modules to create the images.  But the second level is where the real power is.  At the second level you modify or create your own modules, controlling each factory in the module by setting the numerous parameters available for each.

You can consider this program a procedural drawing program.  So rather than drawing each stroke of a picture, advanced algorithms are employed to do the work for you.  But don't be alarmed, no programming is needed.  All options, settings and parameters are set with dialog boxes.


Contacting
Contacting Kamyan Software

The best way to contact us is by E/Mail:

      Internet: 73447.1114@compuserve.com

      CIS: 73447,1114

      AOL: KENCARLINO

You can leave us a message on our BBS:

      708-372-0174

Go to our Web page at:

       http://members.aol.com/kamyansoft/home.htm

Postal Service at:

       Kamyan Software

       1228 Narragansett Drive

       Carol Stream Il. 60188

Or as a last resort you can try to reach us by voice at:

       708-372-6134


Features

General Features

Save modules to disk.

Save individual factories to disk.

Number of factories in a module limited only by memory.

Save bitmap image of your current drawing area.

Randomize factory location.

Module drawing size up to 1024 X 768.

All drawing performed in high quality true color graphics using 16 million colors.

Interactive controls allow dynamic control of effects in real time.

Debugging tracer allows viewing internal values of modules as they run.

Hide or show factories while module is running.

Selectable screen refresh rate to improve performance.

Automatically reset the module at set time intervals or on set cycle intervals.

Automatically save a sequence of bitmaps to disk on set cycle intervals.

Option to automatically start running a module when it is loaded.

Option to automatically show the interactive controls when a module is loaded.

Module designer credit dialog can optionally appear when a module is loaded.

Extensive popup hints which dynamically change when needed.

Factory General Features

Assign names and descriptions to individual factories.

Selectable number of factory draws per cycle.

Control starting, interval and ending life of factories.

Factory control points can be repeated symmetrically, horizontally mirrored, vertically mirrored in any combination.

Factories can be individually disabled and enabled.

Factories can be draggable or in a fixed location.

Optionally activate a factory on a mouse click.

Optional buffer drawing to achieve different effects.

Almost all factory value settings can be further defined by advanced value controls.  These advanced control types include:

    Wrapping from high value to low

    Wrapping from low value to high

    Bouncing from high value to low

    Bouncing from low value to high

    Interactive control of values while module is running

    Random

    Wrap jitter

    Bounce jitter

    Screen width value

    Screen height value

    Screen Center

    Control point locations

    Factory locations

    Values from a file

    Values from a constant list

Factory Color Features

All 16 million colors available per factory.

Seven programmable color control points to design custom color gradiants for each factory.

Selectable random variance levels for each color control point.

Blend color for smooth gradiants or set for hard edge color changes.

Selectable interval of color range table.

Special selected hilight color used for certain drawing effects.

Factory Color Point Features

Each factory has two independent control points used to drawing coordinates.

Selectable minimum and maximum velocity of control points.

Selectable minimum and maximum tethering distance to factory location.

Selectable minimum and maximum tethering distance to other control point.

Definable starting location to control points, in absolute position or relative to factory location.

Selectable friction of each control to add or remove power from control point each cycle.

Define for each control point its starting velocity.

Select control point reaction at the edge of the draw surface.  Choose from bounce, random bounce, wrap, drift, clockwise edge or counter clockwise edge.

Powerful control point path correction feature each with programmable values.   Correction types include:

    Relative

    Follow

    Circle

    Wave

    Archimedean spiral

    Archimedean spiral trianglulated

    Mandela partial 2D XY

    Mandela partial 2D XZ

    Banchoff Klein Bottle 2D XY

    Banchoff Klein Bottle 2D XZ

    Feather fractal

    Cover left to right

    Cover top to bottom

    Cover Right to left

    Cover bottom to top

    Jitter

    Absolute position

Selectable mix the control point location and path correction.

Factory Magnetics Features

Any factory or combination of factories can generate magnetic effects.

Selectable magnetic channel.  ( Allows selecting which objects will be effected by the magnetics )

Definable strength of magnetic pull.

Strength can fade over distance or remain constant.

Controllable life intervals for the magnetic pull.

Attract to the factory location or a control point.

Option to pull to the distance radius of the factory.

Allow negitive pull values.

Allow pull beyond the center point.

Option to evenly distribute the pull across the x and y axis.

Magnetic pull can effect the location of other factory control points or effect drawing effects for other factories.

Factory Drawing Features

Large selection of base drawing types each with programmable parameters which allow detail customization.

Drawing types include:

    Dot

    Line

    Ellipse

    Box

    Circle

    Filled ellipse

    Filled box

    Filled circle

    Sphere

    Pyramid

    Line end high-light

    Line center high-light

    High-light right

    High-light left

    High-light bottom

    High-light top

    High-light bottom right

    High-light bottom left

    High-light top right

    High-light top left

    Pixel storm

    Shrink

    Grow

    Shift up

    Shift down

    Shift left

    Shift right

    Pickup

    Bitmap

    Large Line Fade

    Small Line Fade

    Time escape quadratic fractal

    Turtle drawing

    Mandelbrot fractal

    Julia Set fractal

Drawing types can be process by up to 10 levels of pixel effects.

Effect Types include:

    Value function

    Random function

    Jitter function

    Symmetry

    Overlay

    Fat dot

    Miscellaneous patterns 1 - 4

    XY wave add function

    XY wave mul function

    Lined

    Bared

    Interference

    Magnetic

    Mirror

    Dither

    Color filter function

    Naturalize color

    Checker function

    Circle function

    Box function

    Rectangle function

    Horizontal bar function

    Vertical bar function

    Concentric circle function

    Concentric box function

    Interlaced function

    Blur image process

    Sharpen image process

    Edge detect image process

    Emboss image process

    Anti-alias

    Rotate

    Shear

    Split

    Turbulence function

    Screen Luminance function

    Working luminance function

    Spectral synthesis function

    fBm function

    XY screen position function

    XY draw position function

    Cellular automaton 3 base

    Cellular automaton 8 base

    Cellular automaton function

    Magnify

    Sawtooth function

    Pulse function

    Sphere projection

    Contour tiles function

    Erase flag function

All function effects can be modifed prior to application to an object by the following modifiers:

    Invert

    Absolute

    Negate

    Add

    Subtract

    Multiply

    Divide

    Modulus

    Mix

    Use previous function value

    Add previous function value

    Subtract previous function value

    Multiply previous function value

    Divide previous function value

    Modulus previous function value

    Mix previous function value

Function result values can be applied to a variety of objects these include the following:

    New RGB

    New xy

    Index RGB

    Screen RGB add

    Working RGB add

    XY add

    Screen RGB and working RGB add

    Screen RGB subtract

    Working RGB subtract

    XY subtract

    Screen RGB and working RGB subtract

    Screen RGB multiply

    Working RGB multiply

    XY multiply

    Screen RGB and working RGB multiply

    Screen RGB divide

    Working RGB divide

    XY divide

    Screen RGB and working RGB divide

    Screen minimum

    Working minimum

    XY minimum

    Screen RGB and working RGB minimum

    Screen maximum

    Working maximum

    XY maximum

    Screen RGB and working RGB maximum

    Screen RGB and working RGB mix

    Working RGB filter

Description area for each of the 10 effects levels.


Ordering Information

The easiest way to order is to select ORDER FORM from the HELP menu.  There you will see payment methods accepted include check, credit card and pay via Compuserve.

The registered version of The Graphics Factory is $39.00 plus $3.00 shipping and handling.   If you wish to pay by check send payment to;

      Kamyan Software

      1228 Narragansett Drive

      Carol Stream Il. 60188

To pay by other methods please select ORDER FORM from the HELP menu.


Quick Start
Quick Hints

This section will give you some helpful hints to get you up and running as quick as possible.

1. Use existing modules by selecting Load Module from the File menu, and then selecting one of the files shown in the list box on the left.

2. Most modules that come with this program will automatically start running when loaded.  You can stop the running of the module by selecting Stop from the Module menu.

3. To start or restart loaded modules select Run or Restart from the Module menu.

4. To get to the settings for a factory double click on the factory.  This will bring up the Setting Dialog with six buttons to access various parameters for the factory.

5. To change the colors that an existing factory is generating go to the Settings Dialog by double clicking on the factory and then press the Color button.  This will show the Color dialog.  Double click on each color box to select a new color.

6. Make good use of the popup hints on all dialogs.  Leave the mouse cursor over each control for a second to get a popup hint that describes what the control does.

7. Within the various factory setting dailogs any control with the aqua color background can be double clicked to bring up the Advanced Value Control dialog.


Overview

This section is designed to give you a general understanding of how this program works.  This understanding is important to successfully edit or create modules.

This program is an software application which is designed to create graphic images.  The largest logical unit upon which this application operates is a module.  A module can be saved and loaded to and from disk.  A module contains all the information that can be configured by a user.  A module can be broken down into two parts.  The first are module settings.  These are general settings which effect the overall operation of a module.  The second part is the factories.  A module can contain any number of factories.  Each factory operates independently from each other.

Factories can also be saved and loaded to and from disk, but when loaded they are always part of a module.  Factories are where the actual work is done.  Factories have a large number of programmable settings, that can be broken down into the following areas; general settings, draw settings, color settings, control point settings and magnetic settings.  You can visualize a factory as consisting of a base, this is what you see on screen as a box, and two control points.  You do not directly see the two control points.  The control points of a factory often move with each drawing cycle.  The control points in most cases determine where drawing will occur during that cycle.  For example, if a box drawing type is select for a factory, the box upper left point will be at the location of control point 1 and the lower right point will be at the location of control point 2.

A module when loaded can either be running or idle.  When idle no drawing will take place.  When running each factory has an opportunity to draw each cycle.  A cycle is the process in which each factory is processed one at a time and preforms one drawing operation.  At the start of each cycle programmable values that are configurated with advanced value control are set, otherwise they remain constant.

A factory when asked to draw will first determine its generat drawing type, such as a line, box or cicle.  The color table for the factory will be accessed to get the current color to draw with.  Now each pixel of the drawing type will go through the effects processor.  Up to 10 levels of effects can occur before a pixel is actually ploted to screen.  During this time it may be moved, replicated, blended, rotated, waved, filtered out, or any number of different effects.  Once all effects have been preformed on this pixel it is ploted to the off screen bitmap and the next pixel is processed.  This continues for all pixels for all factories.  When all factories are processed the screen will be updated with all factory actions for that cycle.  Now the next cycle can begin.

This is simplification of the process but should give you a general idea about the structure and flow of things.


Menus

This section gives a brief overview of the menu choices.

File | New Module

     Close any current module and start a new one.

File | Open Module

     Load a saved module from disk.

File | Save Module

     Save a currently loaded module to disk.

File | Save Module As

     Save a currently loaded module to a new name.

File | Open Factory

     Loads a saved factory from disk into the current module.

File | Save Factory

     Save the currently highlighted factory to disk.

File | Save Image

     Save a copy of the current image on the canvas to disk in 24 bit BMP format.

Factory | Add

     Add a new factory to the current module.

Factory | Duplicate

     Makes a copy of the currently selected factory and places it in the current module.

Factory | Change

     Shows the Settings dialog for the currently selected factory.

Factory | Delete

     Deletes the currently selected factory.

Module | Run

     Starts the execution of the current module.

Module | Stop

     Stops a currently running module.

Module | Clear

     Clears the current canvas.  This can be used both if the module is running or not.

Module | Restart

     The same as selecting stop and then start.

Module | Randomize Locations

     Randomly place each factory of the current module on the canvas.

Module | Resize Canvas

     Allows changing the size of the canvas.  The current image on the canvas will be lost when this is done.

Module | Interactive Controls

     Show the Interactive Controls dialog.

Module | Show Trace

     Show the Trace dialog.

Module | Show Factories

     Show all factories that were previously hidden.  Does not affect the running status of a module.

Module | Hide Factories

s     Hide all factories for the currently loaded module.  Running status is not affected.

Module | Setting

     Brings up the Module settings dialog.

Module | Credits

     Brings up the Module credits dialog.

Module | Update Wallpaper

     Changes your Windows wallpaper to the current canvas image.

Help | Help

     Starts up this help file.

Help | Catalog

     Starts up the Kamyan Software Product Catalog / Order Form.

Help | Order Form

     Starts up the Kamyan Software Product Catalog / Order Form.

Help | About

     Brings up the About dialog for this product.


Creating Modules
Creating Your Own Modules

Currently due to lack of documentation on creating your own modules the best approach would be to look at existing modules as examples.  Experiment until you get the results you want.  Be sure to read all other topics in this help file including the full feature list.

Double click on factories to bring up the factory settings dialog.  Double click any control with a aqua color background to bring up an additional Advanced Value dialog ( when you want a value to change over time ).

When creating a module it is very easy to select a value within a dialog box which can cause an error.  Most errors will occur while running the module.  In many case when an error occurs a message box will display on screen indicating the problem, along with the factory name.  At this point the factory will be disabled until the module is restart.